Skip to content

Add Cloud Agent development environment config - #12

Draft
Variiuz wants to merge 1 commit into
mainfrom
feat/cloud-agent-environment-2117
Draft

Add Cloud Agent development environment config#12
Variiuz wants to merge 1 commit into
mainfrom
feat/cloud-agent-environment-2117

Conversation

@Variiuz

@Variiuz Variiuz commented Sep 2, 2026

Copy link
Copy Markdown
Owner

Summary

Adds a Cloud Agent development environment for CommonwealthMP so agents can build and test the dedicated server end to end on Linux.

  • New .cursor/environment.json with an idempotent install that configures and builds the server via CMake.
  • .gitignore now tracks .cursor/environment.json while keeping the rest of .cursor/ ignored.

Details

The Linux-buildable surface is the dedicated server plus its test tooling (server/, tools/probe/, tests/). The Windows-only F4SE plugin and the commonlibf4 submodule are not needed for this build, so install skips submodule fetch and stays network-independent.

The default base image already ships CMake 3.28, GCC 13 (C++20), and Git. The default c++/cc is a Clang that resolves the GCC 14 toolchain dir, where the C++ dev libs are absent (cannot find -lstdc++). The install command therefore pins -DCMAKE_CXX_COMPILER=g++, which matches the compiler the Linux CI job effectively uses.

install:

cmake -B build/server -S . -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER=g++ && cmake --build build/server --parallel

No start/terminals are configured because the server is launched on demand during testing rather than as a persistent dev service.

Validation

On the working VM:

  • Clean configure + build succeeds; dist/server/CommonwealthMP.Server produced.
  • ctest full suite: 33/33 passed.
  • Live end-to-end: started the server and connected the probe client; server logged the Hello NEW ... peer=1 host=1 handshake and replied tx Welcome peer=1, probe exited 0.
  • install run twice: idempotent (no rebuild on the second run).

In a fresh Cloud Agent booted from a prebuilt environment build of this branch:

  • Toolchain present (CMake 3.28.3, g++ 13.3.0, git 2.43.0).
  • Install-phase build artifacts already baked in, including /workspace/dist/server/CommonwealthMP.Server.
  • Representative test subset 100% green.
  • Server + probe Hello -> Welcome handshake completed end to end.

Checklist

  • Server and plugin stay on the same protocol (see protocol/)
  • Tests updated if the server or protocol changed
  • Docs updated if a command, INI key, or join flow changed

No protocol, server, or documented command/flow changed; this PR only adds environment configuration.

Open in Web Open in Cursor 

Co-authored-by: Alex. <Variiuz@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants